package com.my.cd.singleton;

/**
 * 通过使用IoDH，我们既可以实现延迟加载，又可以保证线程安全，不影响系统性能，不失为一种最好的Java语言单例模式实现方式<br>
 * 但是，任何初始化失败都会导致此单例类不可用。也就是说，IoDH这种实现方式只能用于能保证外部类初始化不会失败的情况。<br>
 * IoDH initialization-on-demand holder
 */
public class Singleton {

    private Singleton() {
    }

    private static class HolderClass {
        private static final Singleton instance = new Singleton();
    }

    public Singleton getInstance() {
        return HolderClass.instance;
    }
}
